#include <stdio.h>

#include "lexico.h"
#include "sintatico.h"
#include "semantico.h"

int main (int argc, char *argv[])
{
  int retornoSintatico;
  
  if (argc > 1)
  {    
    if (InicializarLexico (argv[1]) &&
        InicializarSintatico ( ) &&
        InicializarSemantico (argv[1]))
    {
      retornoSintatico = ExecutarAnalisadorSintatico ( );
      if (retornoSintatico == (-1) )
         printf("O analisador sintatico encontrou erros no programa.\n");
      else
         printf("O programa esta correto sintaticamente.\n"); 
      
      FinalizarLexico ( );
      FinalizarSemantico ( );
    }
    else
      printf ("Erro: Nao foi possivel acessar o arquivo.\n");
  }
  else
    printf ("Especifique o arquivo a ser analisado.\n");
  
  return 0;
}
